home *** CD-ROM | disk | FTP | other *** search
/ Software USA 4 #11 / Software USA Volume 4.11.iso / mac / Educational / mac06 / usr / include / X11 / X11⁄Intrinsic.h.1 next >
Encoding:
Text File  |  1998-08-05  |  4.6 KB  |  138 lines  |  [TEXT/SPM ]

  1. /* mac06©1997,98 by HNS/DSITRI hns@computer.org
  2. ** X11/Intrinsic.h
  3. */
  4.  
  5. #pragma once
  6.  
  7. #ifndef _XtIntrinsic_h
  8. #define _XtIntrinsic_h
  9.  
  10. #include "stdio.h"
  11. #include "time.h"
  12. #include "string.h"
  13.  
  14. #ifndef NULL
  15. #define    NULL    0
  16. #endif
  17. #ifndef TRUE
  18. #define    TRUE    1
  19. #endif
  20. #ifndef FALSE
  21. #define    FALSE    0
  22. #endif
  23.  
  24. typedef char Boolean;
  25. typedef unsigned int Cardinal;
  26. typedef char *String;
  27. typedef void *XtPointer;
  28.  
  29. struct XtInputId;    /* added to avoid some warnings */
  30.  
  31. typedef void (*XtInputCallbackProc)(XtPointer client_data, int *source, struct XtInputId **id);
  32.  
  33. typedef struct XtInputId
  34.   {
  35.   int source;
  36.   int *condition;
  37.   int mask;
  38.   int indx;
  39.   XtInputCallbackProc proc;
  40.   XtPointer client_data;
  41.   struct XtInputId *next;
  42.   } *XtInputId;
  43.  
  44. struct XtIntervalId;
  45.  
  46. typedef void (*XtTimerCallbackProc)(XtPointer client_data, struct XtIntervalId **id);
  47.  
  48. typedef struct XtIntervalId
  49.   {
  50.   struct timeval interval;
  51.   XtTimerCallbackProc proc;
  52.   XtPointer client_data;
  53.   struct XtIntervalId *next;
  54.   } *XtIntervalId;
  55.  
  56. typedef Boolean (*XtWorkProc)(XtPointer client_data);
  57.  
  58. typedef struct XtWorkProcId
  59.   {
  60.   XtWorkProc proc;
  61.   XtPointer client_data;
  62.   struct XtWorkProcId *next;
  63.   } *XtWorkProcId;
  64.  
  65. #define XtInputNoneMask        ((void *) 0)
  66. #define XtInputReadMask        ((void *) 1)
  67. #define XtInputWriteMask    ((void *) 2)
  68. #define XtInputExceptMask    ((void *) 4)
  69.  
  70. extern Boolean XtMemSummary;    /* trace XtMalloc(), XtFree() etc. */
  71. extern Boolean XtMemCheck;    /* add checking routines to XtMalloc(), XtFree() etc. */
  72.  
  73. typedef void *XtAppContext;
  74. extern XtAppContext XtCurrentApp;
  75.  
  76. void XtAppMainLoop(XtAppContext a);
  77. #define XtMainLoop() XtAppMainLoop(XtCurrentApp)
  78.  
  79. XtInputId XtAppAddInput(XtAppContext a, int source, XtPointer condition, XtInputCallbackProc proc, XtPointer client_data);
  80. #define XtAddInput(s, c, p, cd) XtAppAddInput(XtCurrentApp, s, c, p, cd)
  81. void XtAppRemoveInput(XtAppContext a, XtInputId id);
  82. #define XtRemoveInput(id) XtAppRemoveInput(XtCurrentApp, id)
  83.  
  84. XtIntervalId XtAppAddTimeOut(XtAppContext a, unsigned long interval, XtTimerCallbackProc proc, XtPointer client_data);
  85. #define XtAddTimeOut(i, p, cd) XtAppAddTimeOut(XtCurrentApp, i, p, cd)
  86. void XtAppRemoveTimeOut(XtAppContext a, XtIntervalId id);
  87. #define XtRemoveTimeOut(id) XtAppRemoveTimeOut(XtCurrentApp, id)
  88.  
  89. XtWorkProcId XtAppAddWorkProc(XtAppContext a, XtWorkProc proc, XtPointer client_data);
  90. #define XtAddWorkProc(p, cd) XtAppAddWorkProc(XtCurrentApp, p, cd)
  91. void XtAppRemoveWorkProc(XtAppContext a, XtWorkProcId id);
  92. #define XtRemoveWorkProc(id) XtAppRemoveWorkProc(XtCurrentApp, id)
  93.  
  94. char *XtMalloc(Cardinal size);
  95. #define XtCalloc(num, size) ((char *) memset((void *) XtMalloc(num*size), 0, num*size))
  96. char *XtRealloc(char *ptr, Cardinal num);
  97. void XtFree(char *ptr);
  98.  
  99. void XtPrintMallinfo(String s);
  100.  
  101. #define XtNew(TYPE) ((TYPE *) XtMalloc(sizeof(TYPE)))
  102. #define XtNewString(S) ((S)==NULL ? NULL : strcpy(XtMalloc((Cardinal)strlen(S)+1), (S)))
  103.  
  104. typedef XtPointer Widget;
  105. typedef XtPointer WidgetClass;
  106. typedef String ResourceName;
  107. typedef XtPointer Resource;
  108. typedef String ResourceType;
  109.  
  110. void XtAppInitialize(XtAppContext a);
  111. #define XtInitialize() XtAppInitialize(XtCurrentApp)
  112. Widget XtAppCreateWidget(XtAppContext a, char *name, WidgetClass c, Widget parent);
  113. #define XtCreateWidget(c, p) XtAppCreateWidget(XtCurrentApp, c, p)
  114. void XtAppDestroyWidget(XtAppContext a, Widget w);
  115. #define XtDestroyWidget(w) XtAppDestroyWidget(XtCurrentApp, w)
  116. int XtAppAddResource(XtAppContext a, Widget w, ResourceName r, ResourceType type);
  117. #define XtAddResource(w, r, type) XtAppAddResource(XtCurrentApp, w, r, type)
  118. int XtAppRemoveResource(XtAppContext a, Widget w, ResourceName r);
  119. #define XtRemoveResource(w, r) XtAppRemoveResource(XtCurrentApp, w, r)
  120. Resource XtAppLookupResource(XtAppContext a, Widget w, ResourceName r);
  121. int XtAppSetValue(XtAppContext a, Widget w, ResourceName r, XtPointer v);
  122. #define XtSetValue(w, r, v) XtAppSetValue(XtCurrentApp, w, r, v)
  123. int XtAppGetValue(XtAppContext a, Widget w, ResourceName r, XtPointer v);
  124. #define XtGetValue(w, r, v) XtAppGetValue(XtCurrentApp, w, r, v)
  125.  
  126. typedef Boolean (*XtWidgetCallback)(Widget w, ResourceName r, XtPointer call_data, XtPointer client_data);
  127.  
  128. int XtAppAddCallback(XtAppContext a, Widget w, ResourceName r, XtWidgetCallback cb, XtPointer client_data);
  129. #define XtAddCallback(w, r, cb, cd) XtAppAddCallback(XtCurrentApp, w, r, cb, cd)
  130. int XtAppRemoveCallback(XtAppContext a, Widget w, ResourceName r, XtWidgetCallback cb, XtPointer client_data);
  131. #define XtRemoveCallback(w, r, cb, cd) XtAppRemoveCallback(XtCurrentApp, w, r, cb, cd)
  132. int XtAppCallCallback(XtAppContext a, Widget w, ResourceName r, XtPointer call_data);
  133. #define XtCallCallback(w, r, cd) XtAppCallCallback(XtCurrentApp, w, r, cd)
  134.  
  135. #endif /* _XtIntrinsic_h */
  136.  
  137. /* EOF */
  138.